// 新增
$(document).ready(function() {
    $("#submitAddUser").click(function() {
        // 创建 FormData 对象，收集表单数据
        var formData = new FormData($("#addUserForm")[0]);

        // 发送 AJAX 请求到 AddUserServlet
        $.ajax({
            url: 'AddUserServlet',  // 后台处理的 Servlet
            type: 'POST',
            data: formData,
            processData: false,  // 不处理数据
            contentType: false,  // 不设置 Content-Type
            // beforeSend: function(xhr) {
            //     // 显式指定请求的编码，防止添加中文名时乱码
            //     xhr.setRequestHeader("Content-Type", "multipart/form-data; charset=UTF-8");
            // },
            success: function(response) {
                if(response.success) {
                    // 显示成功提示框
                    $("#alertMessage").show();
                    // 隐藏模态框
                    $('#addUserModal').modal('hide');
                    location.reload();  // 简单起见，直接刷新页面
                } else {
                    // 显示失败提示框
                    $("#errorMessage").show();
                }
            },
            error: function() {
                // 显示失败提示框
                $("#errorMessage").show();
            }
        });
    });
});

// 修改
$(document).ready(function() {
    // 点击“修改”按钮事件
    $(".edit-btn").click(function() {
        var userId = $(this).data("id");

        // Ajax 请求获取用户信息
        $.ajax({
            url: "GetUserInfoServlet",
            method: "GET",
            data: { userId: userId },
            success: function(data) {
                // 填充模态框内容
                $('#userId').val(data.userId);
                $('#userNumber2').val(data.username);
                $('#userName').val(data.nickname);
                $('#deptId').val(data.deptId);
                $('#telephone2').val(data.phone);
                // 根据返回的状态（0或1）设置选中的状态
                if (data.status === '0') {
                    $('#status').val('active'); // 0 表示启用
                } else if (data.status === '1') {
                    $('#status').val('inactive'); // 1 表示禁用
                }

                // 打开模态框
                $('#editUserModal').modal('show');
            }
        });
    });

    // 提交修改表单
    $('#editUserForm').submit(function(event) {
        event.preventDefault();

        // 获取前端表单数据
        var statusValue = $('#status').val();

        // 映射前端的值到后端需要的值
        var statusMapped = (statusValue === "active") ? "0" : "1";

        var userData = {
            userId: $('#userId').val(),
            userNumber: $('#userNumber2').val(),
            userName: $('#userName').val(),
            deptId: $('#deptId').val(),
            telephone: $('#telephone2').val(),
            status: statusMapped,  // 使用映射后的值
        };

        // 使用 Ajax 提交修改请求
        $.ajax({
            url: "EditUserServlet",  // 需要创建该 Servlet
            method: "POST",
            data: userData,
            success: function(response) {
                if (response.success) {
                    // 更新成功
                    $('#editUserMsg').text('修改成功！').show();
                    $('#editUserModal').modal('hide');
                    location.reload();  // 刷新页面
                } else {
                    // 更新失败
                    $('#editUserMsg').text('修改失败：' + response.message).show();
                }
            },
            error: function() {
                $('#editUserMsg').text('请求失败，请重试！').show();
            }
        });
    });

});
// 删除
$(".delete-btn").click(function() {
    var userId = $(this).data("id");

    if (confirm("确定要删除该用户吗？")) {
        $.ajax({
            url: "DeleteUserServlet",
            method: "POST",
            data: { userId: userId },
            success: function(response) {
                if (response.success) {
                    location.reload();
                } else {
                    alert("删除失败：" + response.message);
                }
            }
        });
    }
});
// 查询
$(document).ready(function() {
    $("form").on("submit", function(event) {
        event.preventDefault(); // 阻止表单默认提交

        // 获取搜索栏输入的昵称和用户状态
        var loginName = $("#loginName").val();
        var userStatus = $("#userStatus").val();

        // 使用 Ajax 向后端发送请求
        $.ajax({
            url: "searchUsersServlet",  // 后端 Servlet 地址
            method: "GET",
            data: {
                loginName: loginName,
                userStatus: userStatus
            },
            success: function(response) {
                // 清空表格内容
                $("tbody").empty();

                // 如果后端返回的用户列表为空，显示提示信息
                if (response.length === 0) {
                    $("tbody").append("<tr><td colspan='7'>没有找到符合条件的用户</td></tr>");
                } else {
                    // 否则，动态生成新的用户列表
                    $.each(response, function(index, user) {
                        var statusText = user.status === '0' ? '启用' : '禁止';
                        var statusClass = user.status === '0' ? 'btn-success' : 'btn-secondary';

                        var rowHtml = "<tr>" +
                            "<td>" + user.userId + "</td>" +
                            "<td>" + user.username + "</td>" +
                            "<td>" + user.nickname + "</td>" +
                            "<td>" + user.deptId + "</td>" +
                            "<td>" + user.phone + "</td>" +
                            "<td><button class='btn " + statusClass + " btn-sm'>" + statusText + "</button></td>" +
                            "<td>" +
                            "<div class='btn-group'>" +
                            "<button class='btn btn-sm btn-warning edit-btn' data-id='" + user.userId + "'>修改</button>" +
                            "<button class='btn btn-sm btn-danger delete-btn' data-id='" + user.userId + "'>删除</button>" +
                            "</div>" +
                            "</td>" +
                            "</tr>";

                        $("tbody").append(rowHtml);
                    });
                }
            },
            error: function() {
                alert("查询失败，请稍后再试！");
            }
        });

    });
});

// 上传头像功能
function uploadAvatar() {
    alert('点击了上传头像');
}

// 下载头像功能
function downloadAvatar() {
    alert('点击了下载头像');
}

// 注销功能
function logout(event) {
    // 阻止默认的链接跳转行为
    event.preventDefault();

    // 跳转到注销的Servlet URL
    window.location.href = "/logoutServlet";
}